﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GLWrap;
using ReAnimation.Helpers.Common;


namespace ReAnimation.Domain
{
    [Serializable]
    public class AnimationStep
    {
        private IList<Molecule> _molecules;

        public virtual float Percent { get; set; }
        
        public virtual IEnumerable<Molecule> Molecules 
        { 
            get { return _molecules; } 
            set { _molecules = new List<Molecule>(value); } 
        }

        public virtual ICamera Camera { get; set; }

        public AnimationStep()
        {
            _molecules = new List<Molecule>();
            Camera = new Camera();
        }

        public virtual void AddMolecule(Molecule molecule)
        {
            _molecules.Add(molecule);
        }

        public virtual void RemoveMolecule(Molecule molecule)
        {
            _molecules.Remove(molecule);
        }

       
    }
}
